import { createI18n } from 'vue-i18n'

// 定义支持的语言类型
export type Locale = 'en' | 'zh' | 'ja'

// 全局共享的翻译资源
const globalMessages = {
  en: {
    global: {
      save: 'Save',
      cancel: 'Cancel',
      confirm: 'Confirm',
      back: 'Back',
      MyCollection: 'My Collection'
    }
  },
  zh: {
    global: {
      save: '保存',
      cancel: '取消',
      confirm: '确认',
      back: '返回',
      MyCollection: '我的收藏'
    }
  },
  ja: {
    global: {
      save: '保存',
      cancel: 'キャンセル',
      confirm: '確認',
      back: '戻る',
      MyCollection: 'マイコレクション'
    }
  }
}

// 创建i18n实例
const i18n = createI18n<[Locale], true>({
  locale: 'zh', // 默认语言
  fallbackLocale: 'zh', //  fallback语言
  legacy: false, // 使用Composition API必须设置为false
  globalInjection: true, // 全局注入$t函数
  messages: globalMessages
})

export default i18n